package main

func main() {
	//ptr := new(int)
	//fmt.Println("ptr address: ", ptr)
	//// * 后面接指针变量，表示从内存地址中取出值
	//fmt.Println("ptr value: ", *ptr)

	//===================================
	/**
	运行结果：
		ptr address:  0xc000016098
		ptr value:  0
	*/

	//===================================
	//fmt.Println(newInt_1())
	//fmt.Println(newInt_2())

	//a,_ : = GetData()
	//_,b : = GetData()
	//fmt.Println(a, b)
}

/**
第一种：使用new创建变量
*/
func newInt_1() *int {
	return new(int)
}

/**
第二种：使用普通变量声明语句方式
*/
func newInt_2() *int {
	var dummy int
	return &dummy
}

/**
匿名变量
*/
func GetData() (int, int) {
	return 100, 200
}
